<?php
    $row = file_get_contents('php://input');
    if($row){
        $data = json_decode($row);
        $data->email = explode(";",$data->email);//群发
        require_once "emails.php";
        if($data){
            if($data->head === 20000){
                $len = count($data->email);//获取数组长度
                for($i=0; $i<$len; $i++){
                    to_mail($i,$data);
                }
            };
        }else{
            echo "对不起，邮件发送失败！请检查邮箱填写是否有误。";
            exit();
        };
    }else{
        echo "没有获取到邮箱信息。";
    };

    function to_mail($i,$obj){
        $row = file_get_contents('php://input');
        $code_num = rand(100000,999999);//获取验证码
        include './config.php';
        if($row){
            $data = json_decode($row);
            $sql = "SELECT * FROM sys_email";
            $stmt = $conn->query($sql);
            $stmt->execute();
            $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
            $result = $stmt->fetchAll();
            $email_data = $result;

            //******************** 配置信息 ********************************
            $smtpserverport = $email_data[0]['SMTP_port'];//SMTP服务器端口普通：25 加密：465
            if($smtpserverport == '25'){
                $smtpserver = $email_data[0]['SMTP_name'];//SMTP服务器
            }else{
                $smtpserver = 'ssl://'.$email_data[0]['SMTP_name'];//SMTP服务器
            };//判断是否使用了加密端口
            $smtpusermail = $email_data[0]['email'];//SMTP服务器的用户邮箱
            $smtpemailto = $obj->email[$i];//发送给谁
            $smtpuser = $email_data[0]['email'];//SMTP服务器的用户帐号，注：部分邮箱只需@前面的用户名
            $smtppass = $email_data[0]['email_pos'];//SMTP服务器的授权码
            $mailtitle = $obj->title;//邮件主题
            $mailcontent = "尊敬的【 ".$obj->cont." 】你的验证码为：".$code_num." 有效期为10分钟。如果不是本人亲自获取,请直接忽略,给您带来的不便敬请谅解,谢谢。";//邮件内容
            $mailtype = "HTML";//邮件格式（HTML/TXT）,TXT为文本邮件
            //************************ 配置信息 ****************************
            $smtp = new Smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
            $smtp->debug = false;//是否显示发送的调试信息
            $state = $smtp->sendmail($smtpemailto, $smtpusermail,$email_data[0]['email_name'], $mailtitle, $mailcontent, $mailtype);
            $conn = null;
            if($state==""){
                echo "对不起，邮件发送失败！请检查邮箱填写是否有误。";
                exit();
            }else{
                $arr = array();
                $arr['msg'] = md5($code_num);
                $arr['type'] = "发送到邮箱：【 ".$obj->email[$i]." 】成功!";
                $msg = json_encode($arr);
                echo $msg;
            }

        };

        
    };
?>